package edu.tfh.s2.ehkbot.gerete.aktoren.simulation;

import edu.tfh.s2.ehkbot.gerete.aktoren.BiStateAktor.BiStateAktorState;

/**
 * BiStateAktorSimulation implementiert den Zustand Simulation für BiStateAktor.
 * 
 * @author s2zehn
 */
public class BiStateAktorSimulation implements BiStateAktorState {
	/**
	 * Symoliesiert ob der BiStateAktor aktiviert oder deaktiviert ist.
	 */
	private enum Zustand {
		AKTIVIERT, DEAKTIVIERT
	};

	Zustand zustand = Zustand.DEAKTIVIERT;

	/**
	 * @see edu.tfh.s2.ehkbot.gerete.aktoren.BiStateAktor.BiStateAktorState#aktiviere()
	 */
	@Override
	public void aktiviere() {
		zustand = Zustand.AKTIVIERT;
	}

	/**
	 * @see edu.tfh.s2.ehkbot.gerete.aktoren.BiStateAktor.BiStateAktorState#deaktivier()
	 */
	@Override
	public void deaktivier() {
		zustand = Zustand.DEAKTIVIERT;

	}

	/**
	 * @see edu.tfh.s2.ehkbot.gerete.aktoren.BiStateAktor.BiStateAktorState#istAktiviert()
	 */
	@Override
	public boolean istAktiviert() {
		return zustand == Zustand.AKTIVIERT;
	}

	/**
	 * @see edu.tfh.s2.ehkbot.gerete.aktoren.BiStateAktor.BiStateAktorState#testeFunktion()
	 */
	@Override
	public boolean testeFunktion() {
		return true;
	}

}
